GET/inventory_item
This call retrieves all inventory item records defined for the seller's account. The limit query parameter allows the seller to control how many records are returned per page, and the offset query parameter is used to retrieve a specific page of records. The seller can make multiple calls to scan through multiple pages of records. There is no request payload for this call.
The authorization
header is the only required HTTP header for this call, and it is required for all Inventory API calls. See the HTTP request headers section for more information.
For those who prefer to retrieve numerous inventory item records by SKU value with one call (up to 25 at a time), the bulkGetInventoryItem method can be used.
Input
Resource URI
This method is supported in Sandbox environment. To access the endpoint, just replace the api.ebay.com
root URI with api.sandbox.ebay.com
URI parameters
Parameter | Type | Description |
---|---|---|
limit | string | The value passed in this query parameter sets the maximum number of records to return per page of data. Although this field is a string, the value passed in this field should be an integer from 1 to 200 .Min: 1 Max: 200 Default: 25 Occurrence: Optional |
offset | string | The value passed in this query parameter sets the page number to retrieve. The first page of records has a value of 0 , the second page of records has a value of 1 , and so on. If this query parameter is not set, its value defaults to 0 , and the first page of records is returned. Occurrence: Optional |
HTTP request headers
All requests made to eBay REST operations require you to provide the Authorization
HTTP header for authentication authorization.
All other standard RESTful request headers are optional. For more information on standard RESTful request headers, see the HTTP request headers- opens rest request components page table.
OAuth scope
This request requires an access token created with the authorization code grant flow, using one or more scopes from the following list (please check your Application Keys page for a list of OAuth scopes available to your application):
https://api.ebay.com/oauth/api_scope/sell.inventory.readonly
https://api.ebay.com/oauth/api_scope/sell.inventory
See OAuth access tokens for more information.
Request payload
This call has no payload.
Request fields
This call has no field definitions.
Output
HTTP response headers
This call has no response headers.
Response payload
Response fields
Output container/field | Type | Description |
---|---|---|
href | string | This is the URL to the current page of inventory items. Occurrence: Always |
inventoryItems | array of InventoryItemWithSkuLocaleGroupid | This container is an array of one or more inventory items, with detailed information on each inventory item. Occurrence: Always |
inventoryItems.availability | AvailabilityWithAll | This container is used to specify the quantity of the inventory item that are available for purchase if the item will be shipped to the buyer, and the quantity of the inventory item that are available for In-Store Pickup at one or more of the merchant's physical stores Occurrence: Conditional |
inventoryItems.availability.pickupAtLocationAvailability | array of PickupAtLocationAvailability | This container consists of an array of one or more of the merchant's physical stores where the inventory item is available for in-store pickup. Occurrence: Conditional |
inventoryItems.availability.pickupAtLocationAvailability.availabilityType | AvailabilityTypeEnum | The enumeration value in this field indicates the availability status of the inventory item at the merchant's physical store specified by the pickupAtLocationAvailability.merchantLocationKey field. This field is required if the pickupAtLocationAvailability container is used, and is always returned with the pickupAtLocationAvailability container. Occurrence: Conditional |
inventoryItems.availability.pickupAtLocationAvailability.fulfillmentTime | TimeDuration | This container is used to indicate how soon an In-Store Pickup order will be available for pickup by the buyer after the order takes place. This container is required if the pickupAtLocationAvailability container is used, and is always returned with the pickupAtLocationAvailability container. Occurrence: Conditional |
inventoryItems.availability.pickupAtLocationAvailability.fulfillmentTime.unit | TimeDurationUnitEnum | This enumeration value indicates the time unit used to specify the fulfillment time, such as Occurrence: Conditional |
inventoryItems.availability.pickupAtLocationAvailability.fulfillmentTime.value | integer | The integer value in this field, along with the time unit in the unit field, will indicate the fulfillment time. Occurrence: Conditional |
inventoryItems.availability.pickupAtLocationAvailability.merchantLocationKey | string | The unique identifier of a merchant's store where the In-Store Pickup inventory item is currently located, or where inventory will be sent to. If the merchant's store is currently awaiting for inventory, the availabilityType value should be Occurrence: Conditional |
inventoryItems.availability.pickupAtLocationAvailability.quantity | integer | This integer value indicates the quantity of the inventory item that is available for In-Store Pickup at the store identified by the merchantLocationKey value. The value of quantity should be an integer value greater than Occurrence: Conditional |
inventoryItems.availability.shipToLocationAvailability | ShipToLocationAvailabilityWithAll | This container specifies the quantity of the inventory items that are available for a standard purchase, where the item is shipped to the buyer. Occurrence: Conditional |
inventoryItems.availability.shipToLocationAvailability.allocationByFormat | FormatAllocation | This container is used to specify the quantity of the inventory item that is available for purchase, allocated by the offer types. Occurrence: Conditional |
inventoryItems.availability.shipToLocationAvailability.allocationByFormat.auction | integer | This integer value indicates the quantity of the inventory item that is reserved for the published auction format offers of the SKU. Occurrence: Conditional |
inventoryItems.availability.shipToLocationAvailability.allocationByFormat.fixedPrice | integer | This integer value indicates the quantity of the inventory item that is available for the fixed-price offers of the SKU. Occurrence: Conditional |
inventoryItems.availability.shipToLocationAvailability.availabilityDistributions | array of AvailabilityDistribution | This container is used to set the available quantity of the inventory item at one or more warehouse locations. Occurrence: Conditional |
inventoryItems.availability.shipToLocationAvailability.availabilityDistributions.fulfillmentTime | TimeDuration | This container is used to indicate the expected fulfillment time if the inventory item is shipped from the warehouse location identified in the corresponding merchantLocationKey field. The fulfillment time is the estimated number of business days after purchase that the buyer can expect the item to be delivered. Occurrence: Conditional |
inventoryItems.availability.shipToLocationAvailability.availabilityDistributions.fulfillmentTime.unit | TimeDurationUnitEnum | This enumeration value indicates the time unit used to specify the fulfillment time, such as Occurrence: Conditional |
inventoryItems.availability.shipToLocationAvailability.availabilityDistributions.fulfillmentTime.value | integer | The integer value in this field, along with the time unit in the unit field, will indicate the fulfillment time. Occurrence: Conditional |
inventoryItems.availability.shipToLocationAvailability.availabilityDistributions.merchantLocationKey | string | The unique identifier of an inventory location where quantity is available for the inventory item. This field is conditionally required to identify the inventory location that has quantity of the inventory item. Occurrence: Conditional |
inventoryItems.availability.shipToLocationAvailability.availabilityDistributions.quantity | integer | The integer value passed into this field indicates the quantity of the inventory item that is available at this inventory location. This field is conditionally required. Occurrence: Conditional |
inventoryItems.availability.shipToLocationAvailability.quantity | integer | Important! Publish offer note: Although this field is not required before an offer can be published to create an active listing, out of stock listings will result if this field is omitted or set to This field is used to set the total 'ship-to-home' quantity of the inventory item that will be available for purchase through one or more published offers. This field is not immediately required, but 'ship-to-home' quantity must be set before an offer of the inventory item can be published. If an existing inventory item is being updated, and the 'ship-to-home' quantity already exists for the inventory item record, this field should be included again, even if the value is not changing, or the available quantity data will be lost. Occurrence: Conditional |
inventoryItems.condition | ConditionEnum | This enumeration value indicates the condition of the item. Supported item condition values will vary by eBay site and category. Important!For trading card listings in Non-Sport Trading Card Singles (183050), CCG Individual Cards (183454), and Sports Trading Card Singles (261328) categories, LIKE_NEW (2750) can be used to specify the card as a Graded card and USED_VERY_GOOD (4000) can be used to specify the card as an Ungraded card. If either of these item conditions are used for the affected categories, the seller is then required to use the conditionDescriptors array to provide one or more applicable Condition Descriptor name-value pairs. See the conditionDescriptors field description for more information. Beginning October 23, 2023, trading card listings in the affected categories must use either LIKE_NEW (2750) or USED_VERY_GOOD (4000) item condition, and no other item conditions will be accepted. These item conditions and the conditionDescriptors array will be required for all new listings. If not provided after this date, the publishOffer, bulkPublishOffer, and publishOfferByInventoryItemGroup methods will fail when trying to create new listings. By January 22 2024, all existing listings must be modified with either LIKE_NEW (2750) or USED_VERY_GOOD (4000) item condition and applicable conditionDescriptors name-value pairs. The updateOffer method will fail if the inventory item object does not have one of these two item conditions along with applicable conditionDescriptors name-value pairs. Occurrence: Conditional |
inventoryItems.conditionDescription | string | This string field is used by the seller to more clearly describe the condition of used items, or items that are not 'Brand New', 'New with tags', or 'New in box'. The ConditionDescription field is available for all categories. If the ConditionDescription field is used with an item in a new condition (Condition IDs 1000-1499), eBay will simply ignore this field if included, and eBay will return a warning message to the user. This field should only be used to further clarify the condition of the used item. It should not be used for branding, promotions, shipping, returns, payment or other information unrelated to the condition of the item. Make sure that the condition value, condition description, listing description, and the item's pictures do not contradict one another. Occurrence: Conditional |
inventoryItems.conditionDescriptors | array of ConditionDescriptor | Important!For trading card listings in Non-Sport Trading Card Singles (183050), CCG Individual Cards (183454), and Sports Trading Card Singles (261328) categories, LIKE_NEW (2750) can be used to specify the card as a Graded card and USED_VERY_GOOD (4000) can be used to specify the card as an Ungraded card. If either of these item conditions are used for the affected categories, the seller is then required to use the conditionDescriptors array to provide one or more applicable Condition Descriptor name-value pairs. Beginning October 23, 2023, trading card listings in the affected categories must use either LIKE_NEW (2750) or USED_VERY_GOOD (4000) item condition, and no other item conditions will be accepted. These item conditions and the conditionDescriptors array will be required for all new listings. If not provided after this date, the publishOffer, bulkPublishOffer, and publishOfferByInventoryItemGroup methods will fail when trying to create new listings. By January 22 2024, all existing listings must be modified with either LIKE_NEW (2750) or USED_VERY_GOOD (4000) item condition and applicable conditionDescriptors name-value pairs. The updateOffer method will fail if the inventory item object does not have one of these two item conditions along with applicable conditionDescriptors name-value pairs. This container is used by the seller to provide additional information about the condition of an item in a structured format. Descriptors are name-value attributes that can be either closed set or open text. For more information on the numeric IDs and their text equivalents, use the getItemConditionPolicies method of the Metadata API. Occurrence: Conditional |
inventoryItems.conditionDescriptors.additionalInfo | string | This string provides additional information about a condition descriptor. Open text is passed in this field. Occurrence: Conditional |
inventoryItems.conditionDescriptors.name | string | This string provides the name of a condition descriptor. A numeric ID is passed in this field. This numeric ID maps to the name of a condition descriptor. Condition descriptor name-value pairs provide more information about an item's condition in a structured way. Occurrence: Conditional |
inventoryItems.conditionDescriptors.values | array of string | This array provides the value(s) associated with a condition descriptor. One or more numeric IDs is passed in this field. Commas are used as delimiters between successive name/value pairs. These numeric IDs map to the values associated with a condition descriptor name. Condition descriptor name-value pairs provide more information about an item's condition in a structured way. Occurrence: Conditional |
inventoryItems.groupIds | array of string | This array is returned if the inventory item is associated with any inventory item group(s). The value(s) returned in this array are the unique identifier(s) of the inventory item group(s). This array is not returned if the inventory item is not associated with any inventory item groups. Occurrence: Conditional |
inventoryItems.inventoryItemGroupKeys | array of string | This array is returned if the inventory item is associated with any inventory item group(s). The value(s) returned in this array are the unique identifier(s) of the inventory item's variation in a multiple-variation listing. This array is not returned if the inventory item is not associated with any inventory item groups. Occurrence: Conditional |
inventoryItems.locale | LocaleEnum | This field returns the natural language that was provided in the field values of the request payload (i.e., en_AU, en_GB or de_DE). Occurrence: Always |
inventoryItems.packageWeightAndSize | PackageWeightAndSize | This container is used to specify the dimensions and weight of a shipping package. Occurrence: Conditional |
inventoryItems.packageWeightAndSize.dimensions | Dimension | This container is used to indicate the length, width, and height of the shipping package that will be used to ship the inventory item. The dimensions of a shipping package are needed when calculated shipping is used. Occurrence: Conditional |
inventoryItems.packageWeightAndSize.dimensions.height | number | The actual height (in the measurement unit specified in the unit field) of the shipping package. All fields of the dimensions container are required if package dimensions are specified. Occurrence: Conditional |
inventoryItems.packageWeightAndSize.dimensions.length | number | The actual length (in the measurement unit specified in the unit field) of the shipping package. All fields of the dimensions container are required if package dimensions are specified. Occurrence: Conditional |
inventoryItems.packageWeightAndSize.dimensions.unit | LengthUnitOfMeasureEnum | The unit of measurement used to specify the dimensions of a shipping package. All fields of the dimensions container are required if package dimensions are specified. If the English system of measurement is being used, the applicable values for dimension units are Occurrence: Conditional |
inventoryItems.packageWeightAndSize.dimensions.width | number | The actual width (in the measurement unit specified in the unit field) of the shipping package. All fields of the dimensions container are required if package dimensions are specified. Occurrence: Conditional |
inventoryItems.packageWeightAndSize.packageType | PackageTypeEnum | This enumeration value indicates the type of shipping package used to ship the inventory item. The supported values for this field can be found in the PackageTypeEnum type. Occurrence: Conditional |
inventoryItems.packageWeightAndSize.shippingIrregular | boolean | A value of Occurrence: Conditional |
inventoryItems.packageWeightAndSize.weight | Weight | This container is used to specify the weight of the shipping package that will be used to ship the inventory item. The weight of a shipping package are needed when calculated shipping is used, or if flat-rate shipping rates are used, but with a weight surcharge. Occurrence: Conditional |
inventoryItems.packageWeightAndSize.weight.unit | WeightUnitOfMeasureEnum | The unit of measurement used to specify the weight of a shipping package. Both the unit and value fields are required if the weight container is used. If the English system of measurement is being used, the applicable values for weight units are Occurrence: Conditional |
inventoryItems.packageWeightAndSize.weight.value | number | The actual weight (in the measurement unit specified in the unit field) of the shipping package. Both the unit and value fields are required if the weight container is used. If a shipping package weighed 20.5 ounces, the container would look as follows: "weight": { Occurrence: Conditional |
inventoryItems.product | Product | This container is used in a createOrReplaceInventoryItem call to pass in a Global Trade Item Number (GTIN) or a Brand and Manufacturer Part Number (MPN) pair to identify a product to be matched with a product in the eBay catalog. If a match is found in the eBay product catalog, the inventory item is automatically populated with available product details such as a title, a subtitle, a product description, item specifics, and links to stock images for the product. Occurrence: Conditional |
inventoryItems.product.aspects | string | This is a collection of item specifics (aka product aspects) name-value pairs that provide more information about the product and might make it easier for buyers to find. To view required/recommended product aspects/item specifics names (and corresponding values) for a specific eBay category, sellers can use the getItemAspectsForCategory method of the Taxonomy API. Alternatively, sellers can view similar items on eBay.com in the same category to get an idea of what other sellers are using for product aspects/item specifics.
Note that inventory items that will become part of an inventory item group and multiple-variation listing should have the same attributes that are defined for the inventory item group. This container will be returned if one or more item specific pairs are defined for the inventory item. Important!Publish offer note: This field is required before an offer can be published to create an active listing. Max Length for Aspect Name: 40 Max Length for Aspect Value: 50 Occurrence: Conditional |
inventoryItems.product.brand | string | The brand of the product. This field is often paired with the mpn field to identify a specific product by Manufacturer Part Number. This field is conditionally required if the eBay category requires a Manufacturer Part Number (MPN) value. If eBay is able to find a product match in the eBay Catalog when an eBay Product ID (ePID) or GTIN value (UPC, ISBN, or EAN) is supplied, all product details of that eBay Catalog product is picked up by the inventory item record (including brand) if the createOrReplaceInventoryItem call is successful. Occurrence: Conditional |
inventoryItems.product.description | string | The description of the product. The description of an existing inventory item can be added or modified with a createOrReplaceInventoryItem call. The description of an inventory item is automatically populated if the seller specifies an eBay Product ID (ePID) or a Global Trade Item Number (GTIN) and eBay is able to find a matching product in the eBay Catalog.
This field is returned if defined for an inventory item. If one of the GTIN types (e.g. UPC) was passed in when the inventory item was created/modified and a product match was found in the eBay catalog, product description is one of the details that gets picked up from the catalog product. Important!Publish offer note: This field is required before an offer can be published to create an active listing. Max Length: 4000 Occurrence: Always |
inventoryItems.product.ean | array of string | The European Article Number/International Article Number (EAN) for the product. Although an ePID value is preferred when trying to find a product match in the eBay Catalog, this field can also be used in an attempt to find a product match in the eBay Catalog. If a product match is found in the eBay Catalog, the inventory item is automatically populated with available product details such as a title, a product description, product aspects (including the specified EAN value), and a link to any stock image that exists for the catalog product. Occurrence: Conditional |
inventoryItems.product.epid | string | The eBay Product Identifier (ePID) for the product. This field can be used to directly identify an eBay Catalog product. Based on its specified ePID value, eBay will search for the product in the eBay Catalog, and if a match is found, the inventory item is automatically populated with available product details such as product title, product description, product aspects, and a link to any stock image that exists for the catalog product.
This field is returned if defined for an inventory item. Occurrence: Conditional |
inventoryItems.product.imageUrls | array of string | An array of one or more links to images for the product. URLs must use the "HTTPS" protocol. Images can be self-hosted by the seller, or sellers can use the UploadSiteHostedPictures call of the Trading API to upload images to an eBay Picture Server. If successful, the response of the UploadSiteHostedPictures call will contain a full URL to the image on an eBay Picture Server. This is the URL that will be passed in through the imageUrls array. Before an offer can be published, at least one image must exist for the inventory item. In almost any category at no cost, sellers can include up to 24 pictures in one listing. For inventory items that are a part of an inventory item group/multiple-variation listings, a maximum of 12 pictures may be used per inventory item in the group. Motor vehicle listings are an exception. The number of included pictures in motor vehicle listings depend on the selected vehicle package (see Fees for selling vehicles on eBay Motors). Important!Publish offer note: This array is required and at least one image URL must be specified before an offer can be published to create an active listing. Occurrence: Conditional |
inventoryItems.product.isbn | array of string | The International Standard Book Number (ISBN) value for the product. Although an ePID value is preferred when trying to find a product match in the eBay Catalog, this field can also be used in an attempt to find a product match in the eBay Catalog. If a product match is found in the eBay Catalog, the inventory item is automatically populated with available product details such as a title, a product description, product aspects (including the specified ISBN value), and a link to any stock image that exists for the catalog product. Occurrence: Conditional |
inventoryItems.product.mpn | string | The Manufacturer Part Number (MPN) of a product. This field is paired with the brand field to identify a product. Some eBay categories require MPN values. The getItemAspectsForCategory method in the Taxonomy API can be used to see if a category requires an MPN. The MPN value for a product may automatically be populated for an inventory item if the seller specifies an eBay Product ID (ePID) or a Global Trade Item Number (GTIN) and eBay is able to find a matching product in the eBay Catalog. Occurrence: Conditional |
inventoryItems.product.subtitle | string | A subtitle is an optional listing feature that allows the seller to provide more information about the product, possibly including keywords that may assist with search results. An additional listing fee will be charged to the seller if a subtitle is used. For more information on using listing subtitles on the US site, see the Adding a subtitle to your listings help page. The subtitle of an existing inventory item can added, modified, or removed with a createOrReplaceInventoryItem call. Occurrence: Conditional |
inventoryItems.product.title | string | The title of an inventory item can be added or modified with a createOrReplaceInventoryItem call. Although not immediately required, a title will be needed before an offer with the inventory item is published. The title of an inventory item is automatically populated if the seller specifies an eBay Product ID (ePID) or a Global Trade Item Number (GTIN) and eBay is able to find a matching product in the eBay Catalog. If the inventory item will become part of a single-variation offer, and the listing is not a product-based listing, the text in this field will become the actual listing title for the published offer. However, if the inventory item will become part of a multiple-variation offer, the text in title field of the inventory item group entity will actually become the listing title for the published offer instead, although a title can still be provided for the inventory item, and it will actually become the title of the variation. Important!Publish offer note: This field is required before an offer can be published to create an active listing. Max Length: 80 Occurrence: Always |
inventoryItems.product.upc | array of string | The Universal Product Code (UPC) value for the product. Although an ePID value is preferred when trying to find a product match in the eBay Catalog, this field can also be used in an attempt to find a product match in the eBay Catalog. If a product match is found in the eBay Catalog, the inventory item is automatically populated with available product details such as a title, a product description, product aspects (including the specified UPC value), and a link to any stock image that exists for the catalog product. Occurrence: Conditional |
inventoryItems.product.videoIds | array of string | An array of one or more videoId values for the product. A video ID is a unique identifier that is automatically created by eBay when a seller successfully uploads a video to eBay using the uploadVideo method of the Media API. Occurrence: Conditional |
inventoryItems.sku | string | The seller-defined Stock-Keeping Unit (SKU) of the inventory item. The seller should have a unique SKU value for every product that they sell. Occurrence: Conditional |
limit | integer | This integer value is the number of inventory items that will be displayed on each results page. Occurrence: Always |
next | string | This is the URL to the next page of inventory items. This field will only be returned if there are additional inventory items to view. Occurrence: Conditional |
prev | string | This is the URL to the previous page of inventory items. This field will only be returned if there are previous inventory items to view. Occurrence: Conditional |
size | integer | This integer value indicates the total number of pages of results that are available. This number will depend on the total number of inventory items available for viewing, and on the limit value. Occurrence: Always |
total | integer | This integer value is the total number of inventory items that exist for the seller's account. Based on this number and on the limit value, the seller may have to toggle through multiple pages to view all inventory items. Occurrence: Always |
HTTP status codes
This call can return one of the following HTTP status codes. For an overview of the status codes, see HTTP status codes in Using eBay RESTful APIs.
Status | Meaning |
---|---|
200 | Success |
400 | Bad Request |
404 | Not Found |
500 | Internal Server Error |
Error codes
For more on errors, plus the codes of other common errors, see Handling errors.
Code | Domain | Category | Meaning |
---|---|---|---|
25001 | API_INVENTORY | APPLICATION | A system error has occurred. {additionalInfo} |
25706 | API_INVENTORY | REQUEST | You have provided invalid pagination values. {additionalInfo}. |
25709 | API_INVENTORY | REQUEST | Invalid value for {fieldName}. |
25710 | API_INVENTORY | REQUEST | We didn't find the resource/entity you are requesting. Please verify the request |
Warnings
This call has no warnings.
Samples
New to making API calls? Please see Making a Call.
Note: Identifiers, such as order IDs or user IDs, and personal data in these samples might be anonymized or may no longer be active on eBay. If necessary, substitute current, relevant eBay data in your requests.
Sample 1: Retrieving Multiple Inventory Items
This call will retrieve all inventory items associated with the seller's acount.
Input
By setting the limit query parameter to 2
and the offset query parameter to 0
, the seller wants to limit the number of inventory items returned per page to two, and wants to view the first page of records.
GEThttps://api.ebay.com/sell/inventory/v1/inventory_item?limit=2&offset=0
Output
The first two inventory item records associated with the seller's account are returned in the response. These inventory items have SKU values of G********1
and G********2
. Both of these inventory items are in new condition, and both are only available through standard, ship-to-home fulfillment.
The nextPage field indicates the offset and limit value that would need to be used in the next getAllInventoryItems call to receive the next set of inventory item records.
The total value indicates that there are a total of 100 inventory item records associated with the seller's account, and the size value indicates that there are a total of 50 pages of inventory item records since the current entriesPerPage value is 2.